// pages/personal/info/info.js
import config from '../../../utils/config.js';
import utils from '../../../utils/util.js';
import {
  supplierModel
} from '../../../models/supplier';
const supplier = new supplierModel();

Page({

  /**
   * 页面的初始数据s
   */
  data: {
    config: config,
    nvabarData: {
      showCapsule: 1, //是否显示左上角图标   1表示显示    0表示不显示
      title: '个人信息',
      //  导航栏 中间的标题
    },
    userInfo: {}, // 个人信息

  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    var userInfo = wx.getStorageSync('userinfo')
    userInfo.password = '1234'
    userInfo.password1 = '1234'
    this.setData({
      userInfo: userInfo
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },
  
  onImg() { // 修改头像
    var _this = this
    wx.showLoading({
      icon: 'loading',
      mask: true
    })
    wx.chooseImage({
      count: 1, // 最多可以选择的图片张数，默认9
      sizeType: ['compressed'], // original 原图，compressed 压缩图，默认二者都有
      sourceType: ['album', 'camera'], // album 从相册选图，camera 使用相机，默认二者都有
      success: function (res) {
        const tempFilePaths = res.tempFilePaths[0]
        wx.uploadFile({
          url: config.projectUrl + 'system/file/upload',
          filePath: tempFilePaths,
          name: 'file',
          header: {
            'content-type': 'multipart/form-data'
          },
          formData: {
            'fileType': 'img',
            'isfileName': 'false'
          },
          success(res) {
            wx.hideLoading();
            const _resdata = JSON.parse(res.data)
            if (_resdata.code == 200) {
              //上传成功后服务器返回来的图片地址
              var newImg = _resdata.data;
              var userInfo = _this.data.userInfo
              userInfo.headImage = newImg
              _this.setData({
                userInfo: userInfo
              })
            } else {
              utils.msg(_resdata.msg)
            }

          },
          fail() {
            wx.hideLoading();
            utils.msg('头像修改失败')
          }
        })
      },
      fail: function () {
        wx.hideLoading();
        // fail
      },
      complete: function () {
        // complete
      }
    })
  },

  //账号
  onAccount(event) {
    var userInfo = this.data.userInfo
    userInfo.account = event.detail.value
    this.setData({
      userInfo: userInfo,
    })
  },

  // 性别
  onSex(event) {
    var userInfo = this.data.userInfo
    userInfo.sex = event.detail
    this.setData({
      userInfo: userInfo,
    });
  },

  // 保存
  onSure: utils.throttle(function (e) {
    var allValue = e.detail.value
    if(!this.data.userInfo.headImage){
      utils.msg('请上传头像')
      return
    }
    if(!allValue.account) {
      utils.msg('请输入账号')
      return
    }
    if(!allValue.name) {
      utils.msg('请输入姓名')
      return
    }
    if(!this.data.userInfo.sex) {
      utils.msg('请选中性别')
      return
    }
    if(!allValue.password) {
      utils.msg('请输入密码')
      return
    }
    if(allValue.password != '1234'){
      if(!/^[0-9a-zA-Z]{6,20}$/.test(allValue.password)){
        utils.msg('密码不规范')
        return
      }
    }
    if(allValue.password != allValue.password1){
      utils.msg('密码不一致')
      return
    }
    var params = {
      account: allValue.account,
      name: allValue.name,
      sex: this.data.userInfo.sex,
      headImage: this.data.userInfo.headImage
    }
    if(allValue.password != '1234'){
        params.password = allValue.password
    }
    supplier.supplierUpdate(params, res => {
      var userinfo = wx.getStorageSync('userinfo')
      userinfo.account = allValue.account
      userinfo.name = allValue.name
      userinfo.headImage = this.data.userInfo.headImage
      userinfo.sex = this.data.userInfo.sex
      wx.setStorageSync('userinfo',userinfo)
      setTimeout(function(){
        utils.msg('操作成功',1500,function(){
          setTimeout(function(){
            wx.navigateBack()
          },500)
        })
      },400)
    })
  }),

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})